home *** CD-ROM | disk | FTP | other *** search
/ PC-Blue - MS DOS Public Domain Library / PC-Blue MS-DOS Public Domain Library - NYACC.iso / vol032 / updload.bas < prev   
Encoding:
BASIC Source File  |  1987-01-11  |  4.1 KB  |  112 lines

  1. 5  'UPDLOAD
  2. 10 'DTSS DUMB TERMINAL AND DOWN LOAD PROGRAM
  3. 20 ' Modified IMB dumb terminal example program; by Art Schneider Jan 16,82
  4. 22 '   File transfer program to & from IBM PC and DTSS Time Share computer
  5. 30 SCREEN 0,0
  6. 40 ' SEE PAGE F-4 IN BASIC BOOK  this program was modified for file transfer
  7. 50 '
  8. 60 '
  9. 70 KEY OFF : CLS: CLOSE
  10. 80 '
  11. 90 DEFINT A-Z
  12. 95 KEY 5,"old "                   'DTSS edit commands
  13. 97 KEY 7,"tex rep PRINT,"
  14. 99 KEY 8,"PRINT#FF/,,ALL"
  15. 100 KEY 10,"UNSAVE " : KEY 4,"tap"
  16. 101 KEY 9,"TEX REP &,+,ALL"
  17. 110 FALSE=0 : TRUE = NOT FALSE
  18. 112 K=0 : PUN$ = "PUN"+CHR$(13)
  19. 114 P$ = "ABCDE" :CR = FALSE : CTC$ = CHR$(3)
  20. 116 X1$ = "": AB$="ABORT" : DN=FALSE
  21. 120 XOFF$=CHR$(19) : XON$=CHR$(17)
  22. 130  NW$ = "tap" + CHR$(13)
  23. 132 COLOR 15,0 : PRINT TAB(15);"DTSS down load up load and dumb terminal program"
  24. 134 COLOR 7,0 : PRINT TAB(15);"to down load  have disk in drive.  "
  25. 136 PRINT TAB(15);"Connect with DTSS; call up file with OLD name.
  26. 138 PRINT TAB(15);"Start down load with PUN & then give disk:name" ; " <<<<"
  27. 140 PRINT TAB(15);"when asked. " : PRINT
  28. 141 PRINT TAB(15);"Start up-load with  tap  on key 4"; " <<<<"
  29. 142 PRINT TAB(15); "dial up & press return about 3 times"
  30. 144 M$=INKEY$
  31. 146 IF M$<> CHR$(13) THEN 144
  32. 160 OPEN "com1:300,E,7,1" AS #1
  33. 180 OPEN "scrn:" FOR OUTPUT AS 2
  34. 200 LOCATE ,,1
  35. 400 PAUSE =FALSE :ON ERROR GOTO 9000
  36. 450 KEY ON
  37. 500 'send keyboard input to com line
  38. 510 B$=INKEY$: IF B$<>"" THEN PRINT#1,B$;:PRINT #2,B$;:IF B$ = CHR$(13) THEN CR=TRUE: K=0
  39. 512 IF B$=CTC$ THEN PRINT #1, CHR$(0) 'break DTSS
  40. 515 IF CR=TRUE AND B$<>"" THEN P$=RIGHT$(P$+B$,4) : IF P$=PUN$ OR P$=NW$ THEN 1000 ELSE K=K+1 : IF K>=5 THEN K=0 : CR=FALSE
  41. 520 '
  42. 530 IF EOF(1) THEN 510
  43. 570 IF LOC(1)>128 THEN PAUSE=TRUE : PRINT #1,XOFF$;
  44. 590 C$= INPUT$(LOC(1),#1) :A$=""
  45. 600 ' x linefeed
  46. 620 FOR I = 1 TO LEN(C$)
  47. 630 A1$=MID$(C$,I,1) :AX=ASC(A1$) : IF AX <> 10 THEN A$=A$+A1$
  48. 640 NEXT I
  49. 650 PRINT #2,A$;: IF LOC(1)>0 THEN 570
  50. 690 IF PAUSE THEN PAUSE=FALSE : PRINT #1,XON$;
  51. 710 GOTO 510
  52. 990 'DOWN LOAD rutine here after  PUN  input
  53. 1000 'PUN doun load sub
  54. 1010 PRINT #1, XOFF$
  55. 1015 IF P$ = NW$ THEN 3000      'up-load sub
  56. 1020 COLOR 15,0
  57. 1030 INPUT "IBM   disk:File-Name.BAS  ";F$
  58. 1040 COLOR 7,0
  59. 1042 IF F$ =AB$ THEN PRINT #1,XON$ :GOTO 510
  60. 1050 OPEN F$ FOR OUTPUT AS #3
  61. 1060 PRINT #1,XON$
  62. 1101 PRINT "file open"
  63. 1200 IF LOC(1)>128 THEN PAUSE=TRUE : PRINT #1,XOFF$;
  64. 1300 A$ = INPUT$(LOC(1),#1) :C$=""
  65. 1400 FOR I = 1 TO LEN(A$)
  66. 1500 A1$ = MID$(A$,I,1) : AX = ASC(A1$)
  67. 1600 IF AX =13  THEN C$ = C$+A1$
  68. 1620 IF AX >31 AND AX<126  THEN C$ = C$+A1$
  69. 1650 IF AX =19 THEN DN =TRUE : GOTO 1800
  70. 1700 NEXT I
  71. 1800 PRINT#2,C$; : PRINT #3,C$; :IF DN THEN 2000   ELSE IF LOC(1) > 0 THEN 1200
  72. 1850 IF PAUSE THEN PAUSE=FALSE: PRINT #1, XON$;
  73. 1900 GOTO 1200
  74. 2000 IF NOT PAUSE THEN PRINT #1,XOFF$;
  75. 2100 CLOSE #3
  76. 2200 COLOR 15,0
  77. 2300 PRINT "File ";F$;" transfered"
  78. 2400 COLOR 7,0
  79. 2450 FOR JJ = 1 TO 5 : SOUND RND*1000 +37 ,6 : NEXT JJ
  80. 2500 P$ ="abcde" :CR=FALSE :DN=FALSE:K=0:PAUSE=FALSE :PRINT #1, XON$;: GOTO 510
  81. 3000 ' up load sub
  82. 3050 COLOR 15,0
  83. 3100 INPUT "Send IBM file.... d:name.ext";IBF$
  84. 3150 ON ERROR GOTO 5000
  85. 3200 IF IBF$ = AB$ THEN PRINT #1, XON$; : GOTO 510
  86. 3250 OPEN IBF$ FOR INPUT AS #3
  87. 3300 PRINT "File...."; IBF$; " open for transfer."
  88. 3350 PRINT #1, XON$; : COLOR 7,0
  89. 3360 ON ERROR GOTO 9000
  90. 3400 IF EOF(3) THEN 2000
  91. 3500 LINE INPUT #3,L$
  92. 3550 PRINT #1,L$  : PRINT #2,L$
  93. 3700 'send keyboard input to com line
  94. 3720 B$=INKEY$: IF B$<>"" THEN PRINT#1,B$;:PRINT #2,B$;
  95. 3740 IF B$=CTC$ THEN PRINT #1, CHR$(0) 'break DTSS
  96. 3760 IF EOF(1) THEN 3400
  97. 3780 IF LOC(1)>128 THEN PAUSE=TRUE : PRINT #1,XOFF$;
  98. 3800 C$= INPUT$(LOC(1),#1) :A$=""
  99. 3810 ' x linefeed
  100. 3820 FOR I = 1 TO LEN(C$)
  101. 3830 A1$=MID$(C$,I,1) :AX=ASC(A1$) : IF AX <> 10 THEN A$=A$+A1$
  102. 3840 NEXT I
  103. 3850 PRINT #2,A$;: IF LOC(1)>0 THEN 3780
  104. 3860 IF PAUSE THEN PAUSE=FALSE : PRINT #1,XON$;
  105. 3900 GOTO 3400
  106. 5000 IF ERR = 53 OR ERR = 64 THEN PRINT "I can`t open " IBF$ : RESUME 3100
  107. 5100 IF ERR = 68 OR ERR = 71 THEN PRINT "Check disk " : RESUME 3100
  108. 5200 ON ERROR GOTO 9000
  109. 9000 RESUME
  110. 9990 END
  111. UME 3100
  112. 5100 IF ERR = 68 OR ERR = 71 THEN PRINT "Check disk " : RESUME 3